package com.lh0811.forge.pserv.basic.server.service;

import com.github.pagehelper.PageInfo;
import com.lh0811.forge.pserv.basic.api.param.*;
import com.lh0811.forge.pserv.basic.api.vo.CommDictQueryVo;
import com.lh0811.forge.pserv.basic.api.vo.CommDictTypeVo;

import java.util.List;

public interface CommDictService {
    /**
     * 查询字典类型列表(分页)
     */
    PageInfo<CommDictTypeVo> dictTypeQueryPage(CommDictTypeQueryPageParam param) throws Exception;

    /**
     * 查询字典类型列表
     */
    List<CommDictTypeVo> dictTypeQueryList(CommDictTypeQueryListParam param) throws Exception;

    /**
     * 创建字典类型
     */
    void dictTypeCreate(CommDictTypeCreateParam param) throws Exception;

    /**
     * 修改字典类型
     */
    void dictTypeUpdate(CommDictTypeUpdateParam param) throws Exception;

    /**
     * 删除字典类型
     */
    void dictTypeDelete(Long dictTypeId) throws Exception;

    /**
     * 创建字典
     */
    void dictCreate(CommDictCreateParam param) throws Exception;

    /**
     * 删除字典
     */
    void dictDelete(Long id) throws Exception;

    /**
     * 字典更新
     */
    void dictUpdate(CommDictUpdateParam param) throws Exception;

    /**
     * 查询字典信息列表(分页)
     */
    PageInfo<CommDictQueryVo> dictQueryPage(CommDictQueryPageParam param) throws Exception;

    /**
     * 查询字典信息列表(不分页)
     */
    List<CommDictQueryVo> dictQueryList(CommDictQueryListParam param) throws Exception;
}
